home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Aminet 28
/
Aminet 28 (1998)(GTI - Schatztruhe)[!][Dec 1998].iso
/
Aminet
/
dev
/
amos
/
intuiextend16.lha
/
bonus
/
easylife
/
EasyLife144.doc
< prev
Wrap
Text File
|
1992-02-26
|
23KB
|
774 lines
Easylife Command Quick Reference
================================
1. ZONES & MULTI ZONES
----------------------
X1 = ElZnsx(N)
Y1 = ElZnsy(N)
X2 = ElZnex(N)
Y2 = ElZney(N)
These functions return the co-ordinates of screen zone N on the current
screen, set with "Set Zone N,X1,Y1 To X2,Y2".
X1 = ElZnsx(S,N)
Y1 = ElZnsy(S,N)
X2 = ElZnex(S,N)
Y2 = ElZney(S,N)
These functions return the co-ordinates of screen zone N on screen no S.
ElZn Shift S,DX,DY
ElZn Shift S,DX,DY,FIRST To LAST
The first function moves all zones on screen S by DX pixels horizontally,
and DY pixels vertically. The second only affects zones FIRST To LAST.
NOTE: This function does not actually scroll the graphics in the zone, It
just changes the zones co-ordinates quickly, e.g. To keep the zone
stationary relative to a scrolling background.
ElMz Reserve NUMZONES
This command reserves NUMZONES easylife Multi Zones. These are an alternative
to standard AMOS screen zones, and cannot be used at the same time on the
same screen as AMOS screen zones. The main differences are than multi zones
to not just have a number, but a GROUP number, and an ID number, either of
which can be between - and 65535. This command sets the total number of zones
that space is reserved for - they can have any GROUP/ID number - they don't
have to be consecutive.
THe main advantags of multi zones are that you can scan for a point being in
only one group of zones, and that if they overlap, you can find all the
zones a point lies in, not just the first. The disadvantages are that they
are slower than AMOS zones, and you must specify the co-ordinates to test -
there is no Mouse Zone equivilent.
ElMz Set Zone GROUP,ID,X1,Y1 To X2,Y2
ElMz Set Zone GROUP,ID
The first of these commands sets the co-ordinates of a multi zone. The
second removes a multizone from the reserved zones.
=ElMznsx(GROUP,ID)
=ElMznsy(GROUP,ID)
=ElMznex(GROUP,ID)
=ElMzney(GROUP,ID)
These return the co-ordinates of a multi zone.
ElMz Erase GROUP
This command erases all multi zones in a group.
=El MZone(X,Y)
=El MZone(X,Y,GROUP)
The first of these functions returns the first mutli zone containing the
point (X,Y). The second only searches the zones of group G. Both return
the zone ID number, or 0 if no zone is found that contains the point.
e.g. MZ=El MZone(X Screen(X Mouse),Y Screen(Y Mouse))
=El MZoneN
This function returns the ID number of the next zone that contains the
point given in the previous MZone function, or 0 if there are no more zones
that contain the point.
=El MZoneG
This function returns the GROUP number of the last zone returned by a
=ElMZone / =ElMZoneN function.
Zone Banks
----------
Zone banks are created by the Zone Editor Accessory Program, and like multi
zones, contain zones identifed by GROUP and ID numbers, however in a zone
bank, GROUP numbers must be consecutive, as must ID numbers.
Elzb Add SCREEN,BANK,GROUP
This function erases the AMOS screen zones on SCREEN, and replaces them
with all the zones the group identifer GROUP from the zone bank no. BANK.
They can then be used as if they can be created with Reserve Zone/Set Zone.
Elzb Multi Add BANK,GROUP
This function adds the group of zones to the multi zones of the current
screen, replacing any existing zones which have the same GROUP & ID as
the zones being installed. You must have already reserved an adequate
number of multi zones.
Elzb Install BANK
This command installs all groups from the bank as multi zones on the
current screen, erasing all existing zones & multi zones first.
2. CHARACTER SEARCHING - The (E)asy (L)ife (F)ind functions
-----------------------------------------------------------
= Elf Asc(S$,A)
= Elf Asc(S$,A,P)
This function searches for the first occurance of a character with AscII
code A in S$. The second variation starts at position P+1. If the character
is found, the function returns it's position, otherwise it returns 0.
NOTE: The second function begins at position P+1, not P, so if position P
contains the character, it is ignored. This may seem wierd behaviour,
and is different from AMOS's =Instr, but I find it much more usefull
because often you want to find each occurance of the character, and
with this arangement, to find the next, you pass the position of the
lat in P.
= Elf Not Asc(S$,A)
= Elf Not Asc(S$,A,P)
These is the inverse of the last functions, and return the position of the
first character in S$ that doesn't have AscII code A. Usefull for skipping
spaces in unformatted input.
= Elf Last Asc(S$,A)
= Elf Last Asc(S$,A,P)
This is similar to =Elf Asc, but searches backwards from the end of the
string. (Or position P-1, if P is given). The result is still the position
of the character from the start of the string.
= Elf Last Not Asc(S$,A)
= Elf Last Not Asc(S$,A,P)
This variation searches backwards like =Elf Last Asc, for the first
occurance of any character other than A.
= Elf Nth Asc(S$,A,N)
This function returns the position of the Nth occurance of A in S$.
= Elf Num Asc(S$,A)
This function returns the number of occurances of A in S$.
= Elf Char(S$,A$)
= Elf Char(S$,A$,P)
= Elf Not Char(S$,A$)
= Elf Not Char(S$,A$,P)
= Elf Last Char(S$,A$)
= Elf Last Char(S$,A$,P)
= Elf Last Not Char(S$,A$)
= Elf Last Not Char(S$,A$,P)
= Elf Nth Char(S$,A$,N)
= Elf Num Char(S$,A$)
The =Elf Char functions are identical to their Elf Asc equivilents defined
above, but searcb for any character in A$, instead of the single character
with AscII code A. E.g. =Elf Last Not Char("... --- ..-.-","-.") would
return 8 - the position of the last space.
= Elf Control(S$)
= Elf Control(S$,P)
This function retrun the position of the first control character (AscII
code <32) in S$.
Elf Fail Start
Elf Fail End
After an Elf Fail End command, all these functions return the length of the
string instead of 0, if the character beign searched for is not found (Except
Elf Num & Elf Control commands). Elf Fail Start changes them back to the
default condition of returning 0.
3. COMPRESSION
--------------
Easylife can load and save Powerpacked data, using powerpacker.library
in standard powerpacker data format, compatabile with powerpackers crunch
as data, ppmore, and anything else that uses powerpacker.library
ElPp Keep On
ElPp Keep Off
The first command forces the powerpacker library to remain in memory.
The second cancels the forcing, but does not necessarily remove the library.
ElPp Load BUF,FILENAME$,FLASH
This command loads the file FILENAME$, decrunching it if it is powerpacked
into easylife Powerpacker buffer No. BUF. FLASH can be:
0 = Flash colour 0 while decrunching
1 = Flash colour 1
2 = Flash colour 17 (Mouse Pointer colour 1)
3 = Wobble Screen (Has no effect on AMOS screens)
4 = Decrunch invisibly
If buffer BUF is already in use, the old data will be overwritten. There
are 8 buffers, numbered 0-7.
=Elpp Buf(BUF)
=Elpp Len(BUF)
These functions do for powerpacker buffers what =Start() and =Length()
do for AMOS banks.
Elpp Free BUF
This command erases buffer BUF if it exists.
=Elpp Crunch(FILENAME$,START,LENGTH,EFFICIENCY,SPEEDUP)
This function crunches the memory between START and START+LENGTH, and
saves it to the file FILENAME$. EFFICIENCY is the crunch depth:
0 = Fast Crunch & Poor compressino
1 = / \ |
2 = | |
3 = | \ /
4 = Slowest Crunch & Best compression
SPEEDUP is the ammount of memory to allocate to speedup crunching. If the
value you select is not availble a smaller value is tried. SPEEDUP does
not affect the size of the crunched file.
0 = Large (Approx 200-230k)
1 = Medium (Approx 50-60k)
2 = Small (Approx 10-12k)
Elpp Allocate BUFNO,LENGTH
This command manually reserves a powerpacker buffer. This is us